#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include "lib/time_period.h"

int main() {
    printf("=== 测试 time_period 函数 ===\n");
    fflush(stdout);
    
    // 测试1: 基本输出
    printf("测试1: 基本输出成功\n");
    fflush(stdout);
    
    // 测试2: 时间函数
    printf("测试2: 开始测试时间函数\n");
    fflush(stdout);
    
    time_t now = time(NULL);
    if (now == -1) {
        printf("获取系统时间失败\n");
        return 1;
    }
    printf("系统时间获取成功: %ld\n", now); 
    fflush(stdout);
    
    struct tm *local = localtime(&now);
    if (local == NULL) {
        printf("转换本地时间失败\n");
        return 1;
    }
    printf("本地时间转换成功: %02d:%02d:%02d\n", 
           local->tm_hour, local->tm_min, local->tm_sec);
    fflush(stdout);
    
    // 测试3: time_period 函数
    printf("测试3: 开始测试 time_period 函数\n");
    fflush(stdout);
    
    int hour = local->tm_hour;
    int min = local->tm_min;
    
    printf("准备调用 get_current_period...\n");
    fflush(stdout);
    
    PeriodType period = get_current_period(hour, min);
    printf("get_current_period 调用成功，返回值: %d\n", period);
    fflush(stdout);
    
    printf("准备调用 period_type_to_string...\n");
    fflush(stdout);
    
    const char* period_str = period_type_to_string(period);
    printf("period_type_to_string 调用成功，返回值: %s\n", period_str);
    fflush(stdout);
    
    printf("=== time_period 测试完成 ===\n");
    fflush(stdout);
    return 0;
} 